home *** CD-ROM | disk | FTP | other *** search
- #! /usr/bin/env python
- #
- # * example_09.c: sample gnome-print code. This dialog saves the GnomePrintConfig
- # * to disk after printing and loads it before creating the dialog
- # * This shows how to implement persistent print configuration.
- # *
- # * This program is free software; you can redistribute it and/or
- # * modify it under the terms of the GNU Library General Public License
- # * as published by the Free Software Foundation; either version 2 of
- # * the License, or (at your option) any later version.
- # *
- # * This program is distributed in the hope that it will be useful,
- # * but WITHOUT ANY WARRANTY; without even the implied warranty of
- # * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- # * GNU Library General Public License for more details.
- # *
- # * You should have received a copy of the GNU Library General Public
- # * License along with this program; if not, write to the Free Software
- # * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- # *
- # * Authors:
- # * Chema Celorio <chema@ximian.com>
- # Python conversion:
- # Gustavo J. A. M. Carneiro <gustavo@users.sf.net>
- # *
- # * Copyright (C) 2002 Ximian Inc. and authors
- # *
- # */
-
- #/*
- # * See README
- # */
-
- import pygtk; pygtk.require("2.0")
- import gnomeprint, gnomeprint.ui
-
- CONFIG_FILE = "print_config"
-
- def my_config_load_from_file():
- try:
- file_ = file(CONFIG_FILE)
- except IOError:
- print "Config not found"
- return gnomeprint.config_default()
- return gnomeprint.config_from_string(file_.read(), 0)
-
- def my_config_save_to_file(config):
- file(CONFIG_FILE, "w").write(config.to_string(0))
-
-
- def my_print():
- config = my_config_load_from_file()
- job = gnomeprint.Job(config)
- dialog = gnomeprint.ui.Dialog(job, "Example 09 print dialog", 0)
- response = dialog.run()
- if response == gnomeprint.ui.DIALOG_RESPONSE_CANCEL:
- print "Printing was canceled, config not saved"
- return
-
- print "Config saved to \"%s\"" % CONFIG_FILE
- my_config_save_to_file(config)
-
- my_print()
-
- print "Done..."
-
-